package com.aegis.gateway.config;

import com.aegis.common.constants.PropertiesPre;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

import java.util.List;

/**
 * @Author renogo
 * 
 * @Version 1.0
 * @Descritube
 */
@ConfigurationProperties(prefix = PropertiesPre.GATEWAY)
@Data
public class GatewayProperties {

    public static final long DEFAULT_PERMISSION_EXPIRE = 60 * 2;

    /**
     * 白名单地址
     */
    private List<String> whiteList;

    /**
     * 是否所有接口均要配置权限才允许访问
     */
    private boolean limitAllApi;


    /**
     * 缓存用户信息的时间，单位秒，cacheUserInfo = true的情况下有效
     */
    private long cacheUserInfoTime = DEFAULT_PERMISSION_EXPIRE;

    /**
     * 是否缓存用户信息（含权限信息，角色信息），若业务场景有并发的情况下请开启
     */
    private boolean cacheUserInfo = false;



}
